Metadata পরিচালনা এবং Extraction

Java Technologies - অ্যাপাচি পিওআই (ওয়ার্ড) Custom Properties এবং Metadata |
150
150

Apache POI এর মাধ্যমে Microsoft Word ডকুমেন্টের Metadata পরিচালনা এবং Extraction করা সম্ভব। Metadata হলো ডকুমেন্টের সম্পর্কে তথ্য যা ডকুমেন্টের কনটেন্টের বাইরে থাকে, যেমন লেখক, শিরোনাম, বিষয়বস্তু, তৈরি হওয়ার তারিখ ইত্যাদি। Apache POI আপনাকে এই Metadata পড়তে, পরিবর্তন করতে এবং পরিচালনা করতে সহায়তা করে।


Metadata Extraction (Metadata নির্গমন)

Apache POI এর মাধ্যমে আপনি একটি Word ডকুমেন্ট থেকে Metadata এক্সট্র্যাক্ট (অথবা বের করা) করতে পারেন। Word ডকুমেন্টে বিভিন্ন ধরনের Metadata থাকতে পারে, যেমন:

  • Title (শিরোনাম)
  • Subject (বিষয়)
  • Creator (লেখক)
  • Keywords (কীওয়ার্ড)
  • Last Modified By (সর্বশেষ সম্পাদিত ব্যক্তি)
  • Creation Date (সৃষ্টি তারিখ)
  • Modified Date (সংশোধন তারিখ)

এই Metadata গুলি XWPFProperties এবং CoreProperties ক্লাসের মাধ্যমে অ্যাক্সেস করা যেতে পারে।

উদাহরণ: Metadata Extraction করা

import org.apache.poi.xwpf.usermodel.*;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;

import java.io.FileInputStream;
import java.io.IOException;

public class MetadataExtractionExample {
    public static void main(String[] args) throws IOException, InvalidFormatException {
        // ডকুমেন্ট খুলতে একটি ফাইল ইনপুট স্ট্রিম তৈরি করা
        FileInputStream fis = new FileInputStream("DocumentWithMetadata.docx");
        
        // XWPFDocument ব্যবহার করে ডকুমেন্ট ওপেন করা
        XWPFDocument document = new XWPFDocument(fis);

        // Metadata এক্সট্র্যাক্ট করা
        String title = document.getProperties().getCoreProperties().getTitle();
        String subject = document.getProperties().getCoreProperties().getSubject();
        String author = document.getProperties().getCoreProperties().getCreator();
        String keywords = document.getProperties().getCoreProperties().getKeywords();
        String lastModifiedBy = document.getProperties().getCoreProperties().getLastModifiedBy();
        String created = document.getProperties().getCoreProperties().getCreated();
        String modified = document.getProperties().getCoreProperties().getModified();

        // Metadata প্রদর্শন করা
        System.out.println("Title: " + title);
        System.out.println("Subject: " + subject);
        System.out.println("Author: " + author);
        System.out.println("Keywords: " + keywords);
        System.out.println("Last Modified By: " + lastModifiedBy);
        System.out.println("Created: " + created);
        System.out.println("Modified: " + modified);
    }
}

কোড ব্যাখ্যা:

  • getCoreProperties() মেথড ব্যবহার করে CoreProperties ক্লাসের মাধ্যমে ডকুমেন্টের Metadata অ্যাক্সেস করা হয়।
  • getTitle(), getSubject(), getCreator() ইত্যাদি মেথড ব্যবহার করে Metadata ডেটা এক্সট্র্যাক্ট করা হয়েছে।

Metadata পরিবর্তন (Metadata Editing)

Apache POI এর মাধ্যমে আপনি Word ডকুমেন্টের Metadata পরিবর্তন করতে পারেন। আপনি যেমন Title, Author, Keywords ইত্যাদি পরিবর্তন করতে পারেন। এটি CoreProperties ক্লাসের মাধ্যমে করা যায়।

উদাহরণ: Metadata পরিবর্তন করা

import org.apache.poi.xwpf.usermodel.*;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;

import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.IOException;

public class MetadataEditExample {
    public static void main(String[] args) throws IOException, InvalidFormatException {
        // ডকুমেন্ট খোলার জন্য একটি ফাইল ইনপুট স্ট্রিম তৈরি করা
        FileInputStream fis = new FileInputStream("DocumentWithMetadata.docx");
        
        // XWPFDocument ব্যবহার করে ডকুমেন্ট ওপেন করা
        XWPFDocument document = new XWPFDocument(fis);

        // Metadata পরিবর্তন করা
        document.getProperties().getCoreProperties().setTitle("New Title");
        document.getProperties().getCoreProperties().setSubject("New Subject");
        document.getProperties().getCoreProperties().setCreator("New Author");
        document.getProperties().getCoreProperties().setKeywords("New, Keywords");

        // পরিবর্তিত ডকুমেন্ট সংরক্ষণ করা
        try (FileOutputStream out = new FileOutputStream("UpdatedDocument.docx")) {
            document.write(out);
        }

        System.out.println("Metadata সফলভাবে পরিবর্তন করা হয়েছে!");
    }
}

কোড ব্যাখ্যা:

  • setTitle(), setSubject(), setCreator() ইত্যাদি মেথডের মাধ্যমে ডকুমেন্টের Metadata পরিবর্তন করা হয়েছে।
  • FileOutputStream ব্যবহার করে পরিবর্তিত ডকুমেন্ট সংরক্ষণ করা হয়েছে।

Advanced Metadata Operations

Apache POI ব্যবহার করে আপনি আরও উন্নত Metadata অপারেশনও করতে পারেন, যেমন:

  • Custom Properties যোগ করা এবং সম্পাদনা করা
  • Document Properties এর মধ্যে কাস্টম Metadata ধারণ করা
  • ডকুমেন্টের ভার্সন ট্র্যাকিং এবং পরিবর্তন লগ রাখা

এই সমস্ত অপারেশনগুলি POIFSFileSystem এবং Custom Property API এর মাধ্যমে সম্ভব।


সারাংশ

Apache POI ব্যবহার করে আপনি Microsoft Word ডকুমেন্টের Metadata খুব সহজে এক্সট্র্যাক্ট এবং পরিবর্তন করতে পারেন। CoreProperties ক্লাসের মাধ্যমে আপনি ডকুমেন্টের বিভিন্ন Metadata (যেমন Title, Subject, Author, Keywords) পড়তে এবং সম্পাদনা করতে পারেন। এই ফিচারটি ডকুমেন্টের তথ্য ব্যবস্থাপনার জন্য অত্যন্ত কার্যকরী, বিশেষ করে যদি আপনার ডকুমেন্টগুলির মধ্যে নির্দিষ্ট তথ্য দ্রুত খুঁজে বের করার প্রয়োজন হয়। Custom Properties এবং Document Properties ব্যবস্থাপনা দিয়ে আরও উন্নত কাজ করা যেতে পারে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion